perm filename SCORE.LCS[UP,DOC]6 blob sn#159881 filedate 1975-05-17 generic text, type T, neo UTF8
00100	**************** SCORE MANUAL (NEW VERSION)****************** DEC. 1974
00200	
00300	
00400	     **********  SECTION 1  **********
00500	
00600	
00700	The program 'SCORE' creates note lists for the PDP10 sound generation
00800	program.
00900	
01000	'SCORE'  accomodates  several  instruments  with  30  parameters  per
01100	instrument.  To take full advantage of this program an initialization
01200	file  must  be  read into the sound program giving values for musical
01300	note letters, etc.   The file 'NOTES' has the necessary material.
01400	
01500	You must create the input file for 'SCORE' with  an  editor  program.
01600	The  name of the file can use no more than five letters and the first
01700	letter must not be Z.  The output of SCORE will use  the  same  name,
01800	but with the first letter changed to Z, plus the extension .DAT.
01900	
02000	Input  for each parameter must end with a semicolon.  Comments may be
02100	typed after the sign < . lines under 'EDIT' or 'INSERT' do not need a
02200	semicolon.  'RUN;'  will end the note list.   Entries under 'TAP' are
02300	best left without the semicolon.  In general, lines should include no
02400	more  than  72  characters  before  comments. All lines must begin in
02500	column one. All blank lines will be ignored.  Generally commas and  =
02600	will be equivalent to blanks.
02700	
02800	
03600	The first line should contain name of instrument 1, followed  by  its
03700	begin  time and duration.   An instrument name cannot use more than 5
03800	characters.
03900	
04000	The begin time is given in seconds.   If  no  duration  is  given,  a
04100	'FINE'  must  appear  at the end of one of the lists of items entered
04200	for that instrument. (see Sec. 5.) The duration may be set in seconds
04300	or number of notes.
04400	
04500	SECONDS:     If  only  2  numbers are typed, the 2nd will set the end
04600	time, in seconds, for that instrument.
04700	
04800	NUMBER OF NOTES:    If the duration is to be  set  in  terms  of  the
04900	total number of notes, type the begin time, the instrument number and
05000	the total number of notes for that instrument.
05100	
05200	Example:
05300	
05600	     BUZZ 0,32; Inst1 is BUZZ, BG time=0", duration=32".
05700		(data for 'BUZZ' follows.) 
05800	
05900	     ZAP   2,28; Inst2, BG time=2", last note will start before 
06000	        time 28".	(data for 'ZAP' follows.)
06100	
06200	     ZAP2   0  3,42;  Inst3 is ZAP2,  BGtime=0", duration=42 notes.
06300		(data for 'ZAP2' follows.)
06400	
06500	     HISS ; Inst4 begins at time 0". It ends when an item list ends.
06600		(see pg5).
06700		(data for 'HISS' follows.)
06800	
06900	Note  that  when  the duration is given in seconds it means only that
07000	the last note to be played by that instrument  will  begin  no  later
07100	than  the  indicated duration.  It can often happen that the duration
07200	of the last note can extend beyond the given total duration.  This is
07300	almost certain to happen when random note durations are used.  If the
07400	precise ending time is crucial it must be carefully checked.
07500	
07600	Later changes in parameter data for an instrument must be preceded by
07700	the instrument name and the time at which that data change will  take
07800	effect.   If  the  time  is  to be in seconds, only one number should
07900	appear.
08000		If  the  data  is  to  start  on  a  specific  note,  type an
08100	instrument number and the particular note number of  that  instrument
08200	desired.
08300	
08400	
08500	
08600	
08700	
08800	
08900	
09000	
09100	
09200	
09300	
09400	
09500	
09600	
09700	
09800	
09900	
10000	
10100	
10200	
10300	
10400	
10500	
10600	
10700	
10800	
10900	
11000	
11100	
11200	
11300	RESTART:
11400	
11500	Sometimes is may be desireable to  restart  an  instrument  after  an
11600	extended rest.  If the exact duration of the rest is known it is best
11700	simply to enter the rest  as  a  minus  number  in  P2  (see  Sec.4).
11800	However,  if  the duration of the rest is not easy to predict because
11900	of the use of random selection or other reasons, the  instrument  may
12000	be  'restarted'.   In this case the instrument name (using at least 5
12100	spaces) must be followed by the word 'RESTART' and the then the 2  or
12200	3  numbeers  needed to establish this new begin time and duration, as
12300	noted above.
12400	
12500	When this feature is used this instrument name will be given the next
12600	available number in the instrument list (up to 27) and any references
12700	to it after the restart time must use this new number.
12800	
12900	Example:
13000			TOOT  0 20;  TOOT will play for at least 20"
13100			   - - -
13200			   - - -
13300			   - - - ;END;
13400	
13500			TOOT  RESTART 28 0 15; TOOT will restart at time 28"
13600			   - - -		 and play 15 more notes.
13700			   - - -
13800			   - - - ;END;
13900	
14000	
14100	In  specifying  the  parameters  for  your  instruments,  P3  is best
14200	reserved for center frequency and P4 for amplitude. (See sect. 12)
14300	%t,,,,2 After the entries for each begin time are complete, the  word
14400	'END' must appear before another instrument is dealt with. 'RUN;' may
14500	replace 'END;' if there is no more data to come.  'RUN' must  be  the
14600	last item of the note list.
14700	
14800	Example:	BUZZ  3,13;  data  begins on note 13 of instrument 3.
14900				     (i.e. ZAP2)
15000			--
15100			--		END ; 	End this data for BUZZ
15200			RUN ;		No more data. run the score.
15300	
     

00100	
00200	     **********  SECTION 2  **********
00300	
00400	If  data  for  a parameter is to remain the same for several notes it
00500	should be entered as follows:
00600	
00700		P5 .73; 	P5 will be .73 until changed.
00800		P6 100.2;
00900		P3 CS5;		P3,  C#  of  the  5th  octave.(notes  of  the
01000				tempered scale used are from C1(=lowest C on
01100				piano keyboard)to B7(=highest B).  S=#, F=b
01200		P7 "10*P5";	Any  string  surrounded  by  quotes  will  be
01300				literally reproduced in the score.
01400		P9 P6;		P9 will always have the same data as P6.   No
01500				quotes   needed.  (See also "reserved number"
01600				below.)
01700		P8 F14;		F14  remains  until changed.  (F1 through F15
01800				be used.  For  higher  function  numbers  use
01900				quotes: ("F19")
02000	
02100		    ****Note that any F that appears in this context will  be
02200	                taken  as a function number.    The pitch class F may
02300	                not appear as a single item unless it  is  surrounded
02400	                by quotes. ("F")
02500	
02600	The highest parameter number used by the instrument  must  appear  in
02700	the data list even if its input is to be a zero.
02800	
02900	Example:
03000	
03100		P2 1;		*****  SLASHES (also see Sec.12) ****
03200		P3 C4; 		All this data could appear on one line.
03300				e.g.  P2 1; P3 C4; P5 100; P7 0; END; 
03400		P5 100;	      P4 will be zero
03500		P7 0;         P6 will also be zero
03600		END ;
03700	
03800	****Reserved number!!  9999.PN (PN=parameter number) If you  wish  to
03900	repeat data found in any previously set parameter, you may type P and
04000	the parameter number or 9999 plus the parameter number in hundredths.
04100	
04200	Example:	P13 9999.04;	Whatever is found in P4 will appear
04300					in P13. ('P13 P4;' is the same.)
04400			P14 9999.10;	or P14 P10; repeats P10
04500	
04600	Because of this you may not type in any numbers greater than 9998 and
04700	have them reproduced as such.  (Except with  'LITERAL'.  see  below.)
04800	(Also see 'REP' on Sec. 6.)
04900	
05000	
05100	
05200	
05300	
05400	
05500	
05600	
05700	
05800	
05900	
06000	******* Following is an example of a complete page of input. ******
06100	
06200	ASSUME THAT THE EDIT FILE NAME IS 'SCALE'.
06250		(THE OUTPUT WILL BE ON 'ZCALE.DAT'.)
06300	
06350	    SCALE *** This creates the score for a C-major scale with bass.
06360	   (SINCE NOTHING APPEARS IN COLUMN 1, THE ABOVE WILL BE IGNORED.)
06400	TOOT 0 1 8;	< BG time=0, inst 1 plays 8 notes.
06500	
06600	P2 RHY/8/16//8//4//2; < Rhythm is 8th,  2 16ths,  2 8ths,  2 quarters,
06700	                       half.  See section 4 and following for use
06800			       of 'RHY', 'NOTES', etc.
06900	
07000	P3 NOTES/C4/D/E/F/G/A/B/C5; < Scale goes up from middle C.
07100	
07200	P4 500; P5 F1; END;< Ampl(P4)=500, envelope is sostenuto (F1).
07300	
07400	
07500	CLAR 0 2 5; P2 RHY/4 X 4/2; < 4 quarters and 1 half.
07600	
07700	P3 NOTES/C3/A/F/G/C;<Bass notes
07800	
07900	P4 450; P5 F2; END;< F2 will give semi-staccato.
08000	
08100	TEMPO/ 96 ; < MM=96 
08200	
08300	RUN;
08400	
     

00100	     **********  SECTION 3  **********
00200	
00300	***** RANDOM SELECTION *****
00400	
00500	If random selection is desired, type at least  3  numbers  after  the
00600	parameter  number.   The  first  number  will  be  a percentage (as 1
00700	[=100%]  or  .76  [=76%]) and the next two will set the limits of the
00800	random selection.   e.g.  '1 200,300' means 100% of the time a number
00900	between  200  and 300 will be chosen. Several random selection ranges
01000	may be typed for a single parameter, but
01100	
01200	
01300		→→→→→only two lines of 72 characters each may be used.←←←←←
01400	       If a second line is needed, the first one must not end with ;
01500	
01600	Care must be taken that the sum of the first numbers of each set of 3
01700	is exactly 1 (=100%).
01800	
01900	In  the following example for P5, 50% of the time a number between 20
02000	and 100 will be chosen, 10% of the time between 0 and .7, 10% of  the
02100	time  the  number  200, 25% of the time between 107 and 115 and 5% of
02200	the time the number 1000.
02300	
02400	P5  .5 20,100  .1 0,.7  .1 200,200  .25 107,115  .05 1000,1000;
02500		(71  spaces used.)
02600	
02700	If  random  selection  of  tempered  scale notes is desired, use note
02800	names instead of numbers.
02900	
03000	Example:
03100	
03200	
03300	P3  .5 C2,C3  .2 FS4,FS  .3 D6,F;< If no octave number is  given,  the
03400					  last listed applies.
03500	
03600		(Function numbers may not be dealt with in the above manner.)
03700	
03800	Individual  literal  statements  may  be selected at random using the
03900	following form.
04000	
04100		P7  .2 "P3*100"  .3 "440"  .5 "P3+P6**2";
04200	
04300	The strings are surrounded by quotes  and  may  have  any  number  of
04400	characters.  The  percentage numbers in the example above must add up
04500	to 1 (100%) and and all such random data  must  appear  on  a  single
04600	line.   Data consisting of ordinary numbers, or notes cannot be mixed
04700	with literal strings.
04800	
04900	***** P31 RANDOM TEMPO FACTOR *****
05000	
05100	When  P31  is  set,  the  number  will  represent  the  maximum  time
05200	deviation,  +  or  -, of the note duration numbers found in P2.  Note
05300	that the deviation is in terms of BASIC TIME, hence  a  tempo  change
05400	will not produce a change in the range of deviation.  Check carefully
05500	the results of using P31.
05600	
05700	Example:	P31 .06;< Up to 6/100" random tempo deviation.
05800	
05900	The 'ALL' feature does not! work with P31.
06000	
06100	
06200	***** P32 RANDOM RESTS *****
06300	
06400	Random rests may be entered  by  calling  for  parameter  P32.    Any
06500	number from 0 to 1. (0% to 100%) may be typed.
06600	
06700	Example:	P32 .15;
06800	
06900	If  .15  is  typed,  a  random  selection of 15% of the notes of that
07000	instrument will have rests of durations set by P2. The 'MOVE' feature
07100	(explained later) may be used with P32.
07200	
     

00100	     **********  SECTION 4  **********
00200	
00300	********** SPECIAL CODE WORDS **********
00400	
00500		RHYTHM;		(RH) [acceptable minimum abbreviations]
00600		NOTES;		(NO)
00700		NUMBERS; 	(NU)
00800		FUNCTIONS;	(FU)
00900		RLIST;		(RL)   Sequential list of random num ranges.
01000		RNOTES;		(RN)   Sequential list of random note ranges.
01100		MOVE;		(M)	      The code word must immediately
01200		MOVX;		(MX)	      follow the parameter number.
01300		LITERAL;	(L)
01400		DF;			      Example:  P2 RHY;
01500		REPEAT;		(RE) OR (X)
01600		TAP;		(T)
01700		RTAP;		(RT)
01800		SUBN;
01900		SUBL;
02000		QUAD;
02100		QUADX;
02200		QUADF;
02300		QUADFX;
02400	
02500	*********** RHY (FOR MUSICAL RHYTHMIC TERMINOLOGY) ***********
02600	
02700	Entries under 'RHY' will always be in terms of the fractional part of
02800	a  whole  note. Thus '4' represents a quarter note, '16' a 16th note,
02900	'12' an 8th note triplet,  etc.   For  dotted  rhythms  add  dots  to
03000	numbers.  Composites are entered by typing up to 5 numbers.  To enter
03100	a double dotted 8th note, type /8../, a dotted half tied to the first
03200	of a triplet, /2.,12/, etc.
03300	
03400	If several notes in a row have the  same rhythm,  type  'VALUE  X  N'
03500	(where 'VALUE' is up to 5 numbers representing a rhythmic duration, X
03600	is for 'TIMES' and 'N' is the number of equal values).  Thus to repeat
03700	15 dotted quarter notes, type /4. X 15/.
03800	
03900	Complete rythmic units must be separated by slashes.  If no new entry
04000	appears between slashes (or a slash and a semicolon) the  last  entry
04100	will  be  repeated  for each slash.  Several lines may be used.  Each
04200	line but the last must end with a slash.  The last  line  of  a  list
04300	must  end  with  ;.  The  semicolon may serve the double purpose of a
04400	slash and the end of the string of entries.
04500	
04600	Example:	4///8 X 9/2/; < 3 quarters, 9 eighths, 2 half notes.
04700	
04800		-----------------------------------------------
04900	Any group of varied rhythms may be repeated several times by entering
05000	'REP'  or  'X' and N1,N2.   N1 will be the number of entries involved
05100	and N2 will be the total number of times the group will occur.  If no
05200	2nd number appears, N2=2.
05300	
05400	Example:	4/8 X 5/2./REP 7,3/2; The group of 7 rhythms,
05500		     1 quarter, 5 eighths and a dotted half will play 3 times.
05600	
05700	Here 'REP' and 'X' are interchangeable and  may  also  be  used  with
05800	lists under 'NOTES','FUNC' and 'NUM'.
05900	
06000	Type ';' to terminate a string of rhythmic  entries  before  listing
06100	data for another parameter.
06200	
06300	For  rests, the first number appearing must be negative. A whole note
06400	rest plus a 16th rest would be entered as /-1,16/. Rests may also  be
06500	entered with 'NOTES'.
06600	
06700	If fewer rhythms are entered than are required to make up  the  whole
06800	duration of a section, the series given will loop until some new data
06900	is entered.  This will work the same way for any sequential lists  of
07000	data.
07100	xxx TEMPO xxx
07200	The tempo  may be set for each instrument separately under P2, or for
07300	all parts at once (the preferred method)  after  all  other  data  is
07400	entered.  See SECTION 11 regarding use of TEMPO.
07425	
07437	
07450	 If the tempo is to be set under 'P2 RHY;' use the following
07500	procedures.
07600	
07700	Normally,  3 numbers will be given on each line. N1=duration N2=tempo
07800	at start of dur. N3=tempo at end of dur.   Up to 30  changes  may  be
07900	made  at  a  time.   The  tempo  may  be  set  in either of two ways.
08000	Conventional metronome numbers may be used, (I.e.  mm=the  number  of
08100	quarter notes per minute), or the tempo may be set in terms of 'tempo
08200	factors'.  The 'tempo factor'  1  is  equivalent  to  mm=60.   'Tempo
08300	factors'  must be less than 10, 'mm' numbers must be greater than 11.
08400	If only one number is given after 'TEMPO' it will be taken as a fixed
08500	tempo, not as a duration.
08600	
08700	Example:	TEMPO/ 96 ; < mm=96 unless changed at some later time.
08800	
08900	If  you  type 11 45 120, the tempo will shift from the first tempo to
09000	the second tempo during the course of the  number  of  quarter  notes
09100	given.  (The numbers 11 .75 2 will be taken as  'tempo  factors'  and
09200	produce exactly  the same results.)  If you type two numbers, a third
09300	number will be assumed as the same as the second number.
09400	
09500	Example:P2 RHY;
09600	        TEMPO/10  84 112/ <Changes from mm=84 to mm=112
09700			   	 in 10 quarter notes.
09800		5 112/	 < Tempo will remain at 112 for 5 quarters.
09900		108; <	   Tempo will stay at 108. must end with '; <'.
10000		4/8//4/16/ <	Rhythm data must follow immediately.
10100	
10200	(Note:   It  is probably more convenient to set the tempo changes for
10300	all parts at once with the 'TEMPO' feature described on page 17.   If
10400	this  is  done  it  is best to omit 'TEMPO' data under 'P2 RHY;'.  If
10500	'TEMPO' is not mentioned, mm=60.)
10600	
10700	
     

00100	     **********  SECTION 5  **********
00200	
00300	************ NOTES (do not use with P2) *************
00400	
00500	Use this code word to enter note letters.
00600	
00700	When  the  file  'NOTES'  has  been  read into the music program, the
00800	program will understand the tempered scale as follows.    'C4'=middle
00900	C,   'C3'=1   octave   below,(prints   as   C/2)  'C2'  =two  octaves
01000	below,(prints C/4) 'C1'=three octaves below, 'C5'=one  octave  above,
01100	'C6'=two  octaves  above,  etc.    'CS'=C#,'GS'=G#, 'AF'=Ab, 'EF'=Eb,
01200	etc. If a rest is desired, type 'R' (with 'NOTES' only).
01300	
01400	Example:	P3 NOTES/
01500			C4/CS/R/D/DS//E// < Last 2 entries each play twice.
01600			F X 6/ < 6 F's.
01700			REP  7,4; < Last 7 entries play 4 times. ';' ends the
01800				   list.
01900	
02000	Each octave is taken as starting with the  note  C.    Normally,  the
02100	octave  number,  once  given,  will  stick  until a new octave number
02200	appears.  Thus, to move a 1/2 step B  to  C,  /B3/C4/B3/C4/  must  be
02300	typed, whereas /E4/F/E/F/ also gives 1/2 steps.
02400	
02500	A  different, "PROXIMITY", mode may be used by typing 'P' in front of
02600	the 1st note entered.  This mode automatically chooses the  following
02700	octave numbers so as to produce the smallest intervals between notes.
02800	/P B3/C/B/C/ gives 1/2 steps.
02900	
03000	In  this  mode,  skips  up or down of greater than a perfect 4th must
03100	include an octave number.
03500	
03600	PROXIMITY mode may be left by typing 'O' (for ordinary) in front of a
03700	note and its octave number.  /O B3/C/ gives a major 7th.
03800	
03900	
04000	If no duration is earlier specified (see pg 1) the  list  in  'NOTES'
04100	must  end  with  the  word  'FINE'.  'FINE' may be used with 'NOTES',
04200	'NUM', 'FUNC' OR 'LIT'.
04300	
04400	Example:	P3 NOTES/A5/G/FS4/D/B3/FINE;
04500			'FINE' ends NOTES (and sets duration at that point.)
04600	
04700	
04800	
04900	
05000	
05100	
05200	
05300	
05400	
05500	
05600	
05700	************* LIT (do not use with P2) *************
05800	
05900	All literal data must be surrounded  by  quotes.    Entries  must  be
06000	separated  by slashes and all lines must end with a semicolon.  Extra
06100	slashes will repeat items, but 'X' or  'REP'  may  not  be  used  for
06200	repeats.   However,  as  with  'NOTES',  'RHY', 'NUM' and 'FUNC', any
06300	series of entries will loop until changed at some later  begin  time.
06400	The series of literal items must be ended with a ';'.
06500	
06600	Example:	P12 LIT/
06700			"P4*2" ///"P4*3"/"P5/3"/ < First item will  be  used  3
06800						 times.
06900			"P11+5"/",-52"; < A negative value must be preceded by
07000					 a comma in any literal data.
07100	
07200		("A"// or "A"/; will cause the 'A' to appear twice.)
07300	
07400	
07500	*************** NUM (use with any parameter) *************
07600	
07700	This  works exactly the same way as 'NOTES' except that numbers only!
07800	may be typed.   'NUM' is useful in setting strings of note  durations
07900	or amplitudes without regard to musical terminology.  (9999.PN may be
08000	used here. see page 2.)
08100	
08200	Example:	P5 NUM/100/200//300 X 10/
08300			452/9999.04//500; < 9999.04 repeats whatever is in P4
08400					   ';' ends the list.
08500	 
08600	**********  FUNC (do not use with P2)  **********
08700	
08800	This  works  as above.  Functions 1 through 15 are available. Do not!
08900	use 'F' with the function numbers in this case only!
09000	
09100	Example:  P7 FUNC/3//4 X 4/5/REP 3,2; <=F3,F3,F4,F4,F4,F4,F5,F4,F4,F5.
09200					      ';' ends the list.
09300	
     

00100	
00200	     **********  SECTION 6  **********
00300	
00400	***** RLIST (RANDOM LIST OF NUMBERS) *****
00500	
00600	With RLIST a sequential list of random selection ranges  of  ordinary
00700	numbers may be entered.  The list is terminated by a ';'.
00800	
00900	  ***** The repeat of a unit by means of a slash may be used but
01000	  REP must !!not!! used.  'Motives' are possible. (See Sec.7)
01100	
01200		EXAMPLE:  P4 RLIST/50,200//1000,1000/700,900;
01300	
01400	
01500	***** RNOTES (RANDOM LIST OF NOTES) *****
01600	
01700	RNOTES has the same features as above but using note  names  for  the
01800	ranges.
01900	
02000		EXAMPLE:  P3 RNOTES/C4,CS/E,GS//B,F5/D3,D;
02100	
02200	
02300	
02400	***** REP or X (N1,N2,N3);  ***** 
02500	
02600	'REP'  or  'X' is used to repeat any previously entered data into the
02700	current parameter.  In the following examples assume  that  'ZAP'  is
02800	instrument 2.
02900	
03000	If  no number follows 'REP', data of the same parameter number of the
03100	previous instrument will be repeated.  If one number is used, it will
03200	be a parameter  number  of  the  previous  instrument.   If 2 numbers
03300	appear, the second will be an instrument number.   A 3rd number  will
03400	cause  the  data to be repeated for all following instruments through
03500	the number given.
03600	
03700	Example:ZAP  ;
03800		P2 REP; < P2 of ZAP will have same data as P2 of previous inst.
03900		P5 REP 7; <	Repeats data of P7, previous inst.
04000		P8 REP 5,2; <	Repeats  data  of  P5, inst 2.
04100				(i.e. ZAP.  See below re.';')
04200		P9 X 4,1 5; <	P4,  inst1,  repeats in this and all insts up
04300				to inst 5.
04400		P10 X 6,3; <	Repeats P6 data,  inst3 
04500				(This data must already have appeared above.)
04600	
04700	→→→→→→N.B. Use REP with MOVE data only! if the  begin  times  of  the
04800	instruments   involved   are  the  same.    See  Sec. 10   for  other
04900	information regarding 'REP'. (Also see 'DUPL', Sec. 10.)
05000	
05100	To repeat  data  from  one  parameter  to  another  within  a  single
05200	instrument the semicolon (or slash) alone may be used.
05300β
05400	Example:	P12 1.23; <   No other data may appear between this and
05500	                	    the next line.
05600			P7  ; <  Repeats  data of P12. Be sure a space precedes
05700	     		       ';'.
05800	
05900	When using any kind of random selection 'REP' will repeat the  limits
06000	of selection only, not the particular choices made.
06100	To repeat the choices themselves use '9999.PN' (See Sec. 2).
06200	
06300	
06400	Example:	P4  1 10,100; < P4 chooses a number between 10 and 100.
06500			P12 9999.04; <The choice of P4 will also appear in P12.
06600			(or  P12 P4;)
06700	
     

00100	     **********  SECTION 7  **********
00200	
00300	*********** MOTIVIC REPEATS [ ( ), @, $, - ] **********
00400	
00500	
00600	When any motivic group of items appearing in RHY, NUM,  NOTES,  FUNC,
00700	LIT  or  DF  is  to be used several times the group may be associated
00800	with any letter of the alphabet by surrounding  it  with  parentheses
00900	The  identifying  letter  must  precede  the left parenthesis and the
01000	right parenthesis must follow the last item  to be  included  in  the
01100	group.
01200	
01300	Example:	P3 NOTES/A4/ Q (BF/D5/F/D )/ G4/ etc.
01400	
01500	From this point on the motive  Bb-D-F-D  may  be  entered  by  simply
01600	typing / @Q /.    The '@' sign must always  immediately  precede  the
01700	identifying  letter.   When  '@'  is  used  only  a single letter may
01800	appear.   However  the  various  repeat  features  may   be   applied
01900	thereafter.  / @Q/REP 2/ would create /BF4/D5/F/D/F/D/, i.e. the last
02100	two items of 'Q' would be repeated.  
02200	
02300	In the  above  example  @Q  could  also  be  used  in  any  following
02400	instrument to enter that sequence of notes.
02500	
02600	
02700	It is possible to nest motives.  In  the  following 'X' will  include
02800	'Q'.
02900	
03000	Example:	/ X (E4/ @Q / E )/	
03100	
03200	→→→→→→→→ N.B. In this case the octave (5) number of the last item  of
03300	the  Q  motive will never carry over into the next note.  Rather, the
03400	last actual number given (4) will hold until changed.
03500	
03600	In the following, motive 'J' will include motives 'M' and 'K'.
03700	
03800		/J( M( E4/G/A )/ B/K( BF/C5/D )/ F )/
03900		  |  |________|     |_________|    |
04000		  |________________________________|
04100	
04200	N.B. No more than 2! left parentheses may be open at one  time.   The
04300	right  parentheses always will close off the nearest left parenthesis
04400	which is still open.
04500	
04600		XXXXXXXX   TRANSPOSITION   XXXXXXXXXXX
04700	
04800	MOTIVIC TRANSFORMATIONS may be created in several ways.  A number may
04900	be added after the identifier.  /@Q 12/, /@Q -5/, /@T .3/
05000	If the motive is appearing in NOTES the  number  will  refer  to  the
05100	number  of 1/2 steps transposition to be made.  In the 1st case above
05200	the notes of Q would now appear  8va  higher;  in  the  2nd  case,  a
05300	perfect 4th down (-5 1/2 steps.)
05400	
05500		XXXXXXXXX  AUGMENTATION, DIMINUTION  XXXXXXXXX
05600	
05700	If the motive appears in RHYTHM, NUMBERS or DF, the added number will
05800	become a multiplier.  If 'T' were established as follows:
05900	
06000	     p7 NUM/ T(111/ 222 / 300 ) ; 
06100	
06200	/@T .3/ would produce / 33.3 / 66.6 / 100 /.
06300	
06400	***** Note that any multiplier in the time or  rhythmic  domain  will
06500	simply  multiply the note durations.  Thus a 3 would make all notes 3
06600	times longer, .333 would make them 1/3 as long.
06700	
06800	
06900		XXXXXXXXXX  RETROGRADE MOTION  XXXXXXXXXX
07000	
07100	Motives may be used in retrograde motion by simply typing '-'  before
07200	the  identifier.   /@-Q/ causes motive Q to be played backwards.
07300	
07400	
07500		XXXXXXXXXX  INVERSION  XXXXXXXXXXX
07600	
07700	When using NOTES it is possible to invert motives  by  inserting  '$'
07800	before  the  identifier.    /@$Q/  will  give  an  exact  intervallic
07900	inversion of motive Q.  If Q  included  the  notes  /C4/D/EF/,  /@$Q/
08000	would produce /C4/BF3/A/.  Note that if the retrograde is used at the
08100	same time as '$', the inversion will turn on the  last  note  of  the
08200	original motive. Thus /@$-Q/ produces /EF4/FF/GF/ (i.e. Eb,Fb,Gb).
08300	
08400	Transposition may be done at the same time!  /@$-Q -6/ means  that  Q
08500	will  be inverted, played backwards and the 1st note to be heard will
08600	be transposed down 6 1/2 steps (a tritone) from the  original.   Thus
08700	the notes will be /A3/BF/C4/.
08800	
08900	(CURIOUS RESULTS ARE PRODUCED WHEN INVERSION IS APPLIED  TO  RHYTHMIC
09000	MOTIVES.   THE  FIRST REAL TIME VALUE SERVES AS A PIVOT AND ALL OTHER
09100	REAL TIME VALUES ARE PRODUCED BY  ADDING  THE  PIVOTAL  VALUE TO  THE
09200	DIFFERENCE BETWEEN THAT VALUE AND EACH OTHER VALUE.  IF THE REAL TIME
09300	VALUES WERE .5 .25 .1 1 1.25 THEY WOULD INVERT TO .5  .75  .9  0  AND
09400	-.25.   THUS  THE  LAST ONE WOULD BECOME A REST AND THE ONE BEFORE IT
09500	WOULD HAVE NO TIME VALUE.  THIS SEEMS TO HAVE LIMITED USEFULNESS!)
09600	
     

00100	     **********  SECTION 8  **********
00200	
00300	****************  MOVE, MOVX  *******************
00400	
00500	MOVE may be used for gradual changes from one  number  (or  note)  to
00600	another or from one range of random selection to another.  MOVE works
00700	on a straight line basis.   Use  MOVX  if  an  exponential  curve  is
00800	desired.
00900	
01000	If no random element is involved, 3 to 1 numbers may be typed on each
01100	line.
01200	
01300	Example:   P3 MOVE/3 C4,D5; < In 3" moves from C4 to D5.
01400		   			';' ends MOVE. P3 will stay at D5.
01500		   P4 MOVX/12 100,1000/ < In 12",  moves exponentially from 10
01600					to 1000.
01700		   10 1000,70; < In 10",  from 1000 to 70.  ';' Ends list.
01800					P4 stays at 70.
01900		   P5 MOVE/15 1000/ < Stays at 1000 for 15".
02000		   2500; <  Holds at 2500 until end or later change.
02050	
02200	For changing random ranges type 5 numbers on each line.   You  should
02300	type  a  duration  (in  seconds),  a lower and upper limit for random
02400	selection at the beginning of the time and a lower  and  upper  limit
02500	for random selection at the end of the duration given.
02550	
02600	When ALL the durations given have passed, the parameter will continue
02633	to  choose  from  the  last selection range.  
02666	
02670	IF A SLASH OR SEMICOLON APPEARS WITH NO NEW DATA BETWEEN IT  AND  THE
02679	LAST ONE, THE DATA LAST GIVEN WILL BE REPEATED.
02688	
02699		P7 MOVE/10  100 2000/ / 5 2000 50;  
02732			THE 100 TO 2000 MOVE WILL OCCUR TWICE.
02765	
02800	
02900	EXAMPLE:  If you should want the amplitude to gradually increase from
03000	any number between 200 and 300 up to the number 1200 over a period of
03100	15 seconds and then return to the range  300,350  over  the  next  10
03200	seconds type the following:
03300	
03400		P4 MOVE/ < Upper limit moves from 300 to 1200, lower  from  200
03500			 1200.
03600		15 200,300 1200,1200/
03700		10 1200,1200 300,350/ < Now moves to new limits.
03800					';' will end the list.
03900	
04000	N.B.  You may not! mix the 2 types of entries used with MOVE or MOVX.
04100	      If any units contain 5 numbers, they all must!
04200	
04300	MOVE (but not! MOVX!!) may also be used with  'P32'.   In  this  case
04400	there  will  be  no  lower  and upper limits involved.   To gradually
04500	shift from no rests to 80% rests in 20  seconds,  then  back  to  20%
04600	rests in the next 13 seconds type:
04700	
04800	Example:	P32 MOVE/20 0 .8 /13 .8 .2; 
04900	
05000	Note that the first time value in MOVE will start from whatever begin
05100	time  was  last  given  for  that  instrument   regardless   of   the
05200	instrument's original begin time.
05300	
05400	Example:	ZAP   23.4; < Next data begins at time 23.4"
05500			P6 MOVE/
05600			12 100 350; <P6 moves from 100 to 350 during time 23.4
05700				    to 35.4".  ';' will end the list.
05800	
05900	
06000	******* WARNING !!!!  ********
06100	
06200	Problems (round-off errors) can occur with MOVE begin  times  if  the
06300	instrument  does  not have its first begin time at time 0.  If a rest
06400	is needed as the first note for an instrument using MOVE it  is  best
06500	to put it into P2 and then have the instrument start at time 0.
06600	
06700	Be sure to proof read carefully.
06800	
     

00100	     **********  SECTION 9  **********
00200	
00300	*****  SUBL,(Subroutine,Letters),  SUBN(Subroutine,Numbers)  ***** 
00400	
00500	A subroutine may be added to the 'SCORE' program to set values for P2
00600	through P30.   This subroutine may be called from  several  different
00700	parameters.   The  codes  'SUBL',  'SUBN'  determine  the form of the
00800	output for the calling parameter.  The  heading  for  the  subroutine
00900	must be exactly as follows:
01000	
01100		SUBROUTINE SUBR
01200	 	COMMON /INS/ INST(27),BG(60)
01300		COMMON P(30),INUM,IPAR,CNT(27),BT,PL(48),IREST,DF
01400	C   INST=INSTRUMENT NAME,  BG=BEGIN TIME OF EACH INST.
01500	C   INUM=INST#  IPAR=PARAM#  BT=BASIC TIME P1  WHEN SUBROUTINE IS
01600	C   CALLED, IF IREST IS <0, THAT NOTE WILL BE A REST.
01700	C   NOTE #S IN SUBROUTINE: (1-84)  C4=37  FS4=43  C5=49  F1=86
01800	C   F15=100 (NO F16!)
01900	
02000	'CNT' is the note number for each instrument.  (See 'INFO'  for  exact
02100	dimension .)   'BT'  is  the  'basic'  begin time (i.e. uneffected by
02200	'TEMPO' or 'TF') of each  note.  
02300	To call the subroutine from any parameter type:	P4 SUBN/P7 SUBL; etc.
02400	If  the last parameter of an instrument calls the subroutine, all the
02500	other parameters may be reset in relation to each other  in  any  way
02600	seen fit. 
02700	The PL array is used to show the type of printout  desired  for  each
02800	parameter.   If  there is to be no change from the original state, PL
02900	may be ignored. If you wish to change 'NOTES' input to a number,  set
03000	PL(N) [N is the param. number] to 1.
03100	
03200			P(3)=445.
03300			PL(3)=1.	If P3 had been printing 'NOTES' data,
03400					at  this  point  the number 445 would
03500					print.
03600	
03700	To make the change to a 5 character literal printout, change PL(N) to
03800	3.
03900			P(5)='CS/4'	Regardless of the original form of P5
04000			PL(5)=3.	It will now print those characters.
04100					(up to 5)
04105	
04110	NOTE THAT TO PRINT OUT LITERALS CREATED BY THE SUBROUTINE
04119	PL(N) MUST BE SET TO 3 -- EVEN IF THE CORRESPONDING PARAMETER
04128	WAS ORIGINALLY USING SOME SORT OF LITERAL!!!!!
04137	
04146		### never alter PL(2)!!! ←←←
04155	
04400	
04500	If some interaction between instruments is  desired  there  are  many
04600	ways  to  move  parameter  information  around.   The  use  of  dummy
04700	parameters (those which are not used in any  instrument)  which  call
04800	the  subroutine  is a good way to store parameter data for later use.
04900	
05000	!!  Special problems with P2 !!  If P2 is set  with  'P2  SUBN;'  all
05100	TEMPO  changes will effect the note durations in the usual manner. If
05200	P2 is reset during any other subroutine calls TEMPO changes will  not
05300	be  effective. also 'duration' set in seconds may have to be adjusted
05400	to 'real time' values.
05500	
05600	
05700	The following subroutine is included in SCORE.DMP (which you get when
05800	you type R SCORE.)  In order to use this routine P11 through P13 must
05900	not appear in the instrument since they are used to transmit  numbers
06000	and to call the subroutine.
06100	
06200	C*****  THIS ROUTINE DIVIDES OCTAVE INTO ANY NUMBER OF EQUAL PARTS
06300	
06400		SUBROUTINE SUBR
06500	 	COMMON /INS/ INST(27),BG(60)
06600		COMMON P(30),INUM,IPAR,CNT(27),BT,PL(48),IREST,DF
06700	C   CALL SUBROUTINE FROM P12. P3 CAN BE NOTES OR NUMBS.
06800		X=P(3)
06900		IF(PL(3).EQ.1)GO TO 1
07000		X=30.868*2**(P(3)/12)
07100	C  X=FREQ. IN HZ. BASED ON NOTE # IN P3 (OR GIVEN FREQ.)
07200		PL(3)=1.
07300	C  THIS CAUSES FREQ. NUM TO PRINT INSTEAD OF LITERAL CHARACTERS.
07400	1	P(3)=X*2**(P(11)/P(12))
07500	C  P12=# OF DIVISIONS OF THE OCTAVE. P11=CHROMATIC STEP IN THAT DIV.
07600		RETURN
07700		END
07800	
07900	C   STEPS  ; TYPICAL INPUT FOR MICROTONE SUBROUTINE.
08000	C   CLAR  ; P2 .3; P3 A3; P4 1000; P5 F1; P7 F4; P10 1;
08100	C   P11 NUM/0/1/2/3/4/5/6/7/8/9/FINE;
08200	C   P12 9 SUBN; END;  OCTAVE IS DIVIDED INTO 9 PARTS.
08300	
08400	
08500	****** QUADRAPHONIC FEATURES (WORK IN PROGRESS 6/74) *****
08600	
08700	QUAD is for circles or arcs.   QUADX is for straight lines using X, Y
08800	coordinates.
08900	
09000		QUAD is a special set of subroutines  which  must  be  loaded
09100	with SCORE. The routines to be loaded are QUAD, QUADO, and SAVB.
09200		A QUAD call must be made  in  the  first  of  any  set  of  5
09300	parameters.  The  word  QUAD  (or  QUADX, etc.) must be followed by a
09400	space,  slash  (/).   Other  code  words, such as MOVE, NUM, etc. can
09500	appear  anywhere before the / but if ALL is used it must come before!
09600	QUAD.      **** The 5th parameter must not! be used in your input.
09800	
09900		QUAD  will  produce  circles.   The first parameter used will
10000	contain the position along the arc in degrees.  (Usually a MOVE  will
10100	also appear in this parameter.) The second parameter will contain the
10200	size of the radius.  All distances used with QUAD will be in terms of
10300	an  X,  Y  coordinate  system  where speaker A is at position -10,10,
10400	speaker B is at 10,10, speaker C is at 10,-10 and  speaker  D  is  at
10500	-10,-10.   The  third  and  fourth  parameters  will have the X and Y
10600	values for the location of the center of the  circle.  Hence  if  you
10700	wish a circle to go exactly through all four speakers, you should set
10800	the second parameter at 14.14 (the distance from the center to 10,10,
10900	etc.) and the third and fourth parameters to 0.
11000	
11100		When   using   QUADX   only  the  first  two  parameters  are
11200	significant, the first being the X and the second the Y of the  X,  Y
11300	coordinate system.  (The fifth parameter will always be wasted.)
11400	
11500		If  no  F  is included with QUAD or QUADX the numbers printed
11600	out by SCORE for the  first  through  fifth  parameter  will  be  the
11700	multipliers  for  the  amplitude  in  channels  A, B, C and D and the
11800	multiplier to be applied to  pitch  input  to  produce  the  required
11900	Doppler  shift.  ***** In its present state, this form of QUAD can be
12000	used with only one! instrument at a time.***** This will be  expanded
12100	eventually.
12200	
12300		QUADF or QUADFX will cause SCORE to produce  a  file  with  5
12400	functions  that  can  be read directly into the MUSIC program.  These
12500	functions should be used to  control  the  amplitude  of  speakers  A
12600	through D and the Doppler shift .  This is currently the best way  to
12700	use QUAD.
12800	
12900	Some examples:
13000	
13100	To move in a straight line from directly to the left of the listener to
13200	directly to the right.
13300	
13400		DUMMY 0  512; 
13500		P2 1; <  WILL PRODUCE 512 DUMMY NOTES.
13600		P10 QUADFX MOVE/512 -20 20; <The function for spkr A will be F10
13700		P11 0; < The Y pos. will not change.  Spkr B will use F11
13800		END;
13900		RUN;
14000	
14100	
14200		The following will produce a circle with the center directly
14300	between speakers A and B and the arc passing through the listener.
14400	(These routines have not! been fully tested so don't expect full
14500	success with dramatic effects.)
14600	
14700		DUMMY 0 512;
14800		P2 1;
14900		P7 QUADF MOV/512 0 360; <  Will move through a circle in a
15000			clock-wise direction  starting and finishing directly
15100			above the center.  F7 will be function for spkr. A.
15200		P8 15; <   Radius will be 15 units.  F8 will be for spkr B.
15300		P9 0; < X coord. of center.  F9 is for spkr C.
15400		P10 15; < Y coord.  P10 is for spkr D, P11 for Doppler.
15500		RUN;
15600	
15700	  Note that the center of the circle and the radius may also be MOVEd.
15800	
15900	
16000	****** this info is not complete!!!   6/74  ************
     

00100	     **********  SECTION 10  **********
00200	
00300	xxxxx  DUTY FACTOR (DF)  xxxxx
00400	
00410	DF CAN SERVE THREE PURPOSES.  IF DF IS GREATER THAN ZERO AND LESS
00419	THAN 100 (THE USUAL USE OF DF!) NOTES WILL SOUND ONLY DF% OF THE
00428	TIME STATED IN P2.
00437	
00446	IF DF IS GREATER THAN 100, THE VALUE DF-100 WILL BE SUBTRACTED FROM
00455	THE END OF EACH NOTE.  IF REMAINING VALUE IS ZERO OR LESS, P2 WILL 
00464	BE CHANGED TO P2/2.  
00473	
00500	Normally DF=1, i.e.  The envelope for a .5" note  will  last  exactly
00600	.5".   If DF=.3, the envelope will last .15" (i.e. .5*.3) followed by
00700	.35" of silence.  'DF' may be set with any of  the  ways  of  dealing
00800	with  simple  numbers.   'DF'  should  appear  immediately  after the
00900	parameter number (and a space), then any other code  word  pertaining
01000	to  numbers  may  be  used.   (Use  any  parameter  not needed by the
01100	instrument.)
01200	
01300	Example:	P6 DF NUM/    List of numbers will be duty factors.
01400			1/.5/.7/1; If P2=.5, a notes will all start at .5"
01500				    intervals.
01600	
01700	  or:		P6 DF MOVE/10  1  .3;  The duty factor changes.
01800	
01900	  or:		P6 DF .7;   The duty factor remains at 70%.
01910	
01920	   ***** if DF is made negative, the absolute value of DF will
01930		 set the duration of each note.  A following rest will
01940		 fill the time remaining before the next note.  
01950	
01960	   ***** if 100 is added to DF, DF-100 will be the fixed duration
01970		of the rest following each note.   In both this and the 
01980		previous situation, if the total original note duration is
01990		less than the value of DF, then no change will take place.
02000	
02100	  **** NOTE:  DF affects P2 only.
02200		      DF should not exceed 1 (i.e. 100%) unless some 
02300		      provision is made re. overlapping notes of one
02400	  	      instrument (usually forbidden).
02500	
02600	*************** INVISIBLE *********************
02700	
02800	If the letter I (or the whole  word  INVISIBLE)  is  found  after  an
02900	instrument  name,  that  instrument  name, as well as P1 and P2, will
03000	not! print in the score.  This is useful for entering changes in  SEG
03100	or SYNTH that are to follow set time patterns.  When using INVISIBLE,
03200	P3 should usually have some identifier in quotes.  If for any  reason
03300	it  were  desired  to  have  the values of P1 and P2 appear after P3,
03400	simply set P4 P1; and P5 P2;.  Then consider that what would normally
03500	be P3 will now be entered as P6, etc.
03600	
03700	
03800		DUM1 INVIS 0 10;  The name DUM1, P1 and P2 will be invisible.
03900		P2 1; 			The two instrument names will 
04000		P3 LIT/"GLISS"/"BLOP"; alternate from note to note.
04100		P4 P1/P5 P2; 		P4 and P5 will print P1 and P2.
04200		- - - etc.
04300	
04400	See SEG and SYNTH for further use of INVISIBLE.
04500	*******Note that Tempo Factor changes will not!! show up when  P2  is
04600	transferred to some other parameter.************
04700	
04800	************* TAP (for real time RHYTHM) **************
04900	
05000	Use  'TAP'  to  read  in  lists  of  note durations prepared with the
05100	'RHYTHM' program.  Such lists are treated by 'SCORE'  exactly  as  if
05200	you  had  typed in a long string of values under 'NUM'. (The 'RHYthm'
05300	program allows you to tap out note durations with two telegraph keys.
05400	The program is self-instructional.)
05500	
05600	Type  the  name  (use 5 spaces) under which you have saved the RHYTHM
05700	list on the line after the parameter number.
05800	
05900	Example:	P2 TAP;	 'BEATS' is the name of the list 
06000			BEATS ;   created by the 'RHYthm' program.
06100	
06200	('TEMPO' and 'TF'[TEMPO factor] will affect any  data  in  P2  except
06300	that entered by the 'EDIT' and 'INSERT' features.)
06400	
06500	
06600	********** RTAP (coordinates real time input parts) ***********
06700	
06800	This is similar to 'TAP' except that you must indicate at what points
06900	the parts  are to be coordinated.  Under the name of the 'RTAP' input
07000	file you must type a string of pairs of numbers. The 1st of each pair
07100	will  be a duration in rhythmic units (i.e.quarter notes, whole notes
07200	etc.) the 2nd will be the total num of notes to be fitted  into  that
07300	rhythmic time.
07400	
07500	With  'RTAP'  you  must  consider that the TEMPO is relatively stable
07600	when tapping the rhythm for each part.   Any  overall  TEMPO  changes
07700	will be entered with 'TEMPO' or 'CONDUCT'.
07800	
07900	In  the  following example the 1st 7 notes will fit into 1 whole note
08000	(4 basic seconds) of time.  Note #8 will begin  exactly  on  the  2nd
08100	whole  note  of  time.  The  next  14  notes will fit into the next 6
08200	quarter notes of time.  finally the last 3 notes will fit into a half
08300	note of time.
08400	
08500	Example:	P2 RTAP;
08600			RUBAT; Name of 'RTAP' input for this inst.
08700			1/7  /1,2/14  /2/ 3; three pairs.
08710					     ';' will end the list.
08900	
09000	*****  DUPL N;  *****
09100	
09200	Use this for duplicating instruments already set up.  This is similar
09300	to  'REP'  except  that  all the parameter data entered to this point
09400	will be copied.  'DUPL' must appear just after an instrument name.  A
09500	different begin  time may be given the new instrument.  The parameter
09600	data in effect at that time  will  be  duplicated,  but  all  further
09700	changes must be dealt with in the ordinary ways. (For MOVE data to be
09800	properly interpreted, the begin times of instruments  involved  must!
09900	be the same.)
10000	
10100	Example:   ZAP2  1,30;  Starting with note 30 of instrument 1 all
10200		   DUPL  2;     instrument 2's data will be copied by ZAP2.
10300	 	   P7 25/END;   Any parameter may be reset immediately.
10400	
10500	Once a parameter is set by 'DUPL' or 'REP' it will continue to follow
10600	any  changes  occurring  in the original or leading instrument unless
10700	the parameter has been reset in the instrument at hand.
10800	
10900	  BUZZ  0 20/P2 1/P3 C4/P4 400/END;
11000	  ZAP   0 20/DUPL 1/P3 E4/END;  P3 has been reset.
11100	  BUZZ 10/P3 G4/P4 500/END;  P4 of ZAP will go to 500, P3 of ZAP will 
11200	  			     not change.
11300	
11400	
11500	'DUPL' will not duplicate 'TAP' input. (In some cases '9999.02' could
11600	be used.)
11700	
11800	
11900	***** ALL *****
12000	
12100	If several parameters are to be the same for all instruments the word
12200	"ALL" may be inserted after any parameter number.  The data  in  that
12300	parameter   will  then  appear  in  all  instruments  with  a  higher
12400	instrument number used.  If some instruments are not to use the "ALL"
12500	data, their data may be entered in the usual way on a later line.  It
12600	will override the "ALL" data.
12700	
12800	BUZZ 0 1 12 ALL/P2 ALL 1/P3 C4 ALL/P4 200 ALL/END;
12900				This data for all unless changes appear. 
13000	
13100	HISS  /P3 G4/END;		'HISS' changes  P3  to  G4.  
13200	
13300	ZAP  0  1  18/P2.7/END;    'ZAP' plays 18 NOTES, P2=.7" 
13400	
13500	TOOT /RUN;		'TOOT' uses all data of 'BUZZ'.
13600	
13700	Special care must be taken when using 'MOVE' with 'ALL'.
13800	Check your score carefully.  "ALL" will not work with P31.
13900	
14000	
     

00100	     **********  SECTION 11  **********
00200	
00300	***** 'SEG' and 'SYNTH' *****
00400	
00500	If  any  functions  are  to be redefined in the course of a score, by
00600	means of the INVISIBLE feature, 'SEG' and 'SYNTH' may be  treated  as
00700	'instruments'  --  with  the  difference  that  P1 and P2 will not be
00800	printed out.   P3 will be reserved for the  function  name  plus  the
00900	';'.   This data must appear with quotes. (See Section 10.)
01000	
01100	Using 'SYNTH', suppose you should wish to change from  a  mixture  of
01200	66%  fundamental  and  34% 2nd harmonic to 0% fund., 34% 2nd harmonic
01300	and 66% 3rd harmonic  over  a  period  of  20  seconds  at  1  second
01400	intervals.
01500	
01600	Example:	DUMY1 INVIS  0 20;
01700			P2 1;
01800			P3 "SYNTH(F1);";   Sets the function number.
01900	
02000			P4 1; The first semicolon in the line above is part of
02100	                      the data.
02200			P5 MOVE/20 .66,0;
02300			P6 2; P7 .34; P8 3; P9 MOVE/20 0,.66;
02400			P10 999; END; SYNTH data must always end with '999'.
02500	
02600	If the number of parameters needed for 'SYNTH' is to vary from
02700	time to time, set the number to the maximum needed at  the  beginning
02800	and always set all the unused pairs to 1,0 (fundamental at 0 ampl.).
02900	
03000	With 'SEG' there are some special problems since the number of
03100	'steps' must add up to exactly 100 and no numbers may follow the
03200	last amplitude given.  Thus if the number of parameters needed is
03300	variable, all those following the last used must contain ';'.
03400	
03500	Suppose you wish a glissando rate in F12 to change in 5 
03600	steps during 20" from 'SEG(F12);0,1 1,100;' (slow)  to  'SEG(F12);0,1
03700	0,80 1,100;' (fast).
03800	Set up 'SEG' with 9 parameters.  Set P2 to the times desired for each
03900	change of F12.  Use quotes with P3 to enter '(F12);'.
04000	
04100	Example:	DUMY2 INVIS 0 20; P2 4; P3 "SEG(F12)"; (P4 will be 0)
04200			P5 1;    (P6 will be 0)
04300			P7 NUM/1/20/40/60/80;
04400			P8 1; P9 100; END  ; No '999' is needed with 'SEG'.
04500	
04600	*****  Code words not used in conjunction with instrument names  *****
04700	
04800		INSERT
04900		EDIT
05000		TEMPO
05100		CONDUCT
05200	
05300	xxxxx INSERT N1(,N2,N3); xxxxx (Be sure to leave a space before N1.)
05400	
05500	This  is  useful  for  adding single notes or comments. A total of 19
05600	lines may be added.
05700	
05800	A line may be added at a specific point in time or in terms of a note
05900	number.
06000	
06100	A  single  number  after  insert  will  be the insert's entry time in
06200	seconds. If two numbers are given, they will be the instrument number
06300	and  note  number  before  which  the  insert will appear. If any 3rd
06400	number is given, 'INSERT' will reproduce several lines of text.    To
06500	end  the input type '*' in column one of a final line.  This will not
06600	appear in the printout.
06610	
06620	  'INSERT -99;'  Will cause the insert to appear before! the 'PLAY;'
06630	  statement.  This is useful if the output "flags", RCDFLG or BIGBIT,
06640	  are to be specified in your score.
06700	
06800	An  entry  time in seconds will be in 'basic time', i.e. not affected
06900	by 'TEMPO' or 'TF' changes.
07000	
07100	Example:	INSERT 2.5; Next line  will  appear  at  2.5"  'basic
07200				    time'.
07300			SEG(F2);0,1  1,100;
07400	
07500			INSERT 3,45; Next line will appear just  before  note
07600				     45 of inst 3.
07700			PRINT(P4);
07800	
07900			INSERT 5,0,1; Next lines will appear at time 5".
08000			P23←526;
08100			RA←0;
08200			RB←0;
08300			*		This line will not appear in score.
08400	
08500	Up to 75 characters may be entered in each line.  A 'comment' for the
08600	score  may  be  typed by beginning the entry with '<' and ending with
08700	';'.  If note data is to be inserted, be careful that P1 and  P2  are
08800	consistent with the requirements of the music program.
08900	
09000	xxxxx EDIT N1,N2(,N3) xxxxx
09100	
09200	'EDIT' allows you to edit any single parameter  (except  P1)  already
09300	written in the score or you may replace the entire list of parameters
09400	for any given note.  'EDIT' supercedes  all  choices  made  by  other
09500	means.
09600	
09700	N1=inst number.  N2=note number.  N3=parameter number.
09800	
09900	If you type only 2 numbers (inst & note numbers), you  will  have  to
10000	insert the instrument name and all! parameters for that note and what
10100	you  type  will  appear exactly as is in the score.   Be sure that P1
10200	and P2 are correct.  75 spaces may be used.  If  you  also  type  the
10300	parameter  number, you may enter new data for that parameter and note
10400	only.
10500	
10600	When P2 is edited it may only be a number. (Also - P2,  when  edited,
10700	will  not be affected by 'TEMPO' or 'TF'changes.) P3-30 may use up to
10800	5 characters.  What you type will appear as is.  Do not use quotes.
10900	
11000	N.B. If note pitches are edited (using the tempered scale) they  must
11100	be entered as C, C/2, CS*4, etc., not as C4, C3, CS6, etc.
11200	
11300	
11400	xxxxx TEMPO (N) xxxxx
11500	
11600	This is used to make TEMPO changes for all instruments at  once,  'N'
11700	is  begin  time (in basic time) of first TEMPO change.
11800	
11900	→→→  When TEMPO is used for the 1st time 'N' must!! equal zero.  When
12000	'N' is omitted, =0 is assumed. Metronome numbers from 20 up or  TEMPO
12100	factors  from .1 to 10 may be entered. Any number larger than 10 will
12200	be understood as a MM number.
12300	
12400	The  duration  of  a TEMPO change is always in terms of 'basic time',
12500	I.E. when the 'overall TEMPO factor' is 1 or a  quarter  note=1  sec.
12600	(Of  course  a  quarter  note might not equal 1 sec. If TEMPO changes
12700	have been entered with 'RHY'.  The important thing is that the  TEMPO
12800	factor is '1' until changed by 'TEMPO'.)
12900	
13000	P1  and  P2  values  in 'INSERT' and 'EDIT' notes remain unchanged by
13100	'TEMPO' and 'TF' and hence must be reset.
13200	
13300	See Sec. 4 for example.
13400	
13500	xxxxx CONDUCT xxxxx
13600	
13700	Use 'CONDUCT' to read in a list of TEMPO changes  prepared  with  the
13800	'RHYTHM' program.  (See also 'TAP' on page 6.) The list is treated by
13900	score as if you had typed in a  TEMPO  change  for  each  beat.   You
14000	cannot  use  'TEMPO' if you use 'CONDUCT'. (You may use 'TF' however.
14100	see page 16.)
14200	
14300	Example:  CONDUCT ;
14400		  60X ; '60X' might be the name of the list created
14500			 by the 'RHYTHM' program.
14600	
14700	(Note: You cannot use 'TAP' or 'RTAP' with inst 27 if you plan to use
14800	'CONDUCT'.)
14900	
15000	
15100	******** SEMICOLONS **********
15200	
15300	Many items may be put on one line. Semicolons must separate the items
15400	and the line must end with a ';'.
15500	
15600	Example:	BUZZ 0 10; P2 1; P3 C4 ; P5 100; P7 0; END;
15700			ZAP 3,15; P5 .73 ; P6 100.2 ; END;
15800			HISS 0 5; P2 .1; P3 1 C4,B; RUN;
15900	
16000	→→→→ A new line must always be used after the word 'END' .
16100	
16200	
16300	
     

00100	     **********  SECTION 12  **********
00200	
00300	
00400	********** How to run 'SCORE' **********
00500	
00600	
00700	To  run  'SCORE' type 'R SCORE'. The TTY will respond by typing 'TYPE
00800	FILE NAME'.
00900	
01000	You  should type  the  name  of  the  edit  file  containing all your
01100	parameter  data.   Following  the  file  name  up to 4 numbers may be
01200	typed.  (See also 'TYPE' and 'EDIT' at end of this section.)
01300	
01400	N1=TEMPO FACTOR (TF)  N2=amplitude factor (ampfac)
01500	N3=seconds to be omitted  N4=duration at cutoff
01600	
01700	(If you type 'INFO' for the file name a resume of the above  and  how
01800	many instruments are available is typed out.)
01900	
02000	If  no  numbers are typed the following is assumed: N1=1, N2=1, N3=0,
02100	N4=19999.
02200	
02300	
02400	The following explains the various possibilities.
02500	
02600	
02700	xxxxx TF xxxxx
02800	
02900	
03000	The 'TEMPO FACTOR' controls all time elements in the score. If it  is
03100	set to 2, all P1 and P2 time will move twice as fast.  (I.e. The time
03200	values will be cut in half.) If it is set to .333, all time will be 3
03300	times as long, etc.
03400	
03500	'TF' is set at 1 (or MM=60) at start of program.
03600	
03700	None  of the time values printed at the top of the score are affected
03800	by the overall TEMPO FACTOR.
03900	
04000	The 'TEMPO FACTOR' will always automatically reset itself to  '1'  at
04100	the  end  of  each  run. Any values for P1 or P2 set with 'INSERT' or
04200	'EDIT' will not! be changed by 'TF'  or  'TEMPO'  changes.   If  such
04300	values  are  not  reset  errors  will  occur  in the sound generating
04400	program.
04500	
04600	            xxxxx  AMPFAC  xxxxx
04700	
04800	This  controls  the  values  in P4 only.  If amplitude data occurs in
04900	other parameters leave AMPFAC at 1.  If you set AMPFAC (N2)  at  1.5,
05000	all P4 numbers will be increased by 50%.
05100	If AMPFAC is to be changed but not 'TF', a 1 or  0  must  appear  for
05200	'TF'.
05300	
05400	Example:	TTY -- TYPE FILE NAME
05500			You -- ZOOM  0 1.5  <CR>
05600	
05700	
05800	xxxxx  OMIT  xxxxx
05900	
06000	Use this for testing small sections of  long  note  lists.   Example:
06100	suppose you wish to run only 5 seconds from the end of a 25" list.
06200	
06300	Example:		ZOOM  0 0 20
06400	
06500	Be careful regarding 'INSERT' and 'EDIT' NOTES.  The P1 time of  such
06600	NOTES is unaffected by 'OMIT'.
06700	Also the 'TEMPO FACTOR' does not interact with 'OMIT' or 'DURATION'.
06800	If you use 'TF' and 'OMIT' together, first get a  listing  with  'TF'
06900	set as you wish it, then set 'OMIT' according to those time values.
07000	'OMIT' will always automatically reset itself to '0' at  the  end  of
07100	each run.
07200	
07300	
07400	xxxxx DURATION xxxxx
07500	
07600	If  you  wish  to set the actual duration to something less than that
07700	given in the input list type the new duration as the fourth number.
07800	
07900	To play the first 10" of a 25" note list type:
08000				ZOOM  0 0 0 10
08100	
08200	To play the section from time 6.2" to 12.35" type:
08300				ZOOM  0 0 6.2 12.35
08400	
08500	Sometimes roundoff problems occur.  Check your note lists carefully.
08600	
08700	
08800	Next the TTY will type:
08900		 'TO DSK=1, TTY=2, BOTH=0, LPT=22, PROOF=3, DEBUG=4'
09000	
09100	If  you  type  a  '3'  the  actual  duration  of  the  note list will
09200	eventually appear on the TTY and the numbers of items  found  in  the
09300	various lists.
09400	
09500	If you type '4', the contents of the 'V array' will be printed.
09600	
09700	If you type a second number it will become the initial random number.
09800	
09900	If you type any third number it will cause the listing of  all  input
10000	data  to  be  suppressed.  It will not affect the list written on the
10100	disk.
10200	
10210	A  FOURTH  NUMBER  WILL  CAUSE  ONLY THE INSTRUMENT OF THAT NUMBER TO
10219	PRINT OUT IN  THE  SCORE.   THIS  IS  USEFUL  TO  TRY  OUT  A  SINGLE
10228	INSTRUMENT OF A MULTI-VOICE SCORE AT A TIME.
10237	
10246	Example:   TTY -- 'TO DSK=1, TTY=2, BOTH=0, LPT=22, PROOF=3, DEBUG=4'
10255	  	   You --  2 399 1 2
10264	
10273	  OUTPUT WILL BE ON TTY ONLY, THE INITIAL RANDOM NUMBER IS 399, 
10282	  THE INPUT LIST WILL NOT PRINT OUT, ONLY INST.2 WILL APPEAR.
10291	
10500	
10600	
10700	
10800	
10900	
11000	
11100	
11200	xxxxx  TYPE  xxxxx
11300	
11400	If  when  SCORE  is  started you type 'TYPE' instead of a file name a
11500	complete note data-list may be  entered  directly  to  SCORE  without
11600	recourse  to  an  outside  editor.  Care must be taken as there is no
11700	provision for backing up to correct an earlier line.  After the  word
11800	'RUN'  is  entered  all  data  typed is put into a disk file known as
11900	FOR21.DAT which may be later edited like any  other  file.   If  this
12000	data  is  to  be kept it is advisable to rename the file as any later
12100	use of the 'TYPE' feature will create a new FOR21.DAT file.
12200	
12300	
12400	xxxxx  EDIT --- Editing SCORE input as it is read in.  xxxxx
12500	
12600	If  'EDIT'  is given as the file name when SCORE is started each line
12700	of input may be changed.  You will  be  asked  again  to  'TYPE  FILE
12800	NAME'.   Now  enter  the  edit  file  name.  As each line appears the
12900	program questions if changes are to be made.  'Y' (=yes) indicates  a
13000	change.  In  this  case  the  complete  line,  with  changes, must be
13100	retyped.   A <CR> is taken to mean no changes are  desired.   No  new
13200	lines may be inserted but lines may be lengthed to 72 characters. 'G'
13300	(=go) may be used to escape from this edit mode.   If  this  type  of
13400	editing  is anticipated when the file is first set up it is advisable
13500	to use very short lines of text.
13600	
     

00100	     **********  SECTION 13  **********
00200	
00300	
00400	********* SECTIONS ********
00500	
00600	If  certain  blocks  of  data  are to recur they may be given section
00700	names which can be called upon several times.
00800	
00900		SECTION A;
01000		TOOT  0 20; P2 .1; P3 NO/ B4/ A/ G; P4 500; END;
01100		END SECTION;
01200	
01300		SECTION B;
01400		BUZZ  0 20; P2 .25; P3 1 C2,G3; P4 800; END;
01500		END SECTION;
01600	
01700		BUZZ  ; P5 F1; END;
01800	
01900	
02000		TOOT  5 -4; END;   A 4" rest begins after time 5".
02100	
02200		PLAY A 9;
02300	
02400		BUZZ  7 -3; END;
02500	
02600		PLAY B 10;
02700	
02800		BUZZ 10; P4 150; END;
02900	
03000		TOOT 13; P3 NOTES/ CS5/ DS/ E/ FS; END;
03100	
03200		PLAY A 18;
03300		RUN;
03400	
03500	Sections are identified by any single character.  They are terminated
03600	by 'END SECTION'.  In the above example, anytime the  data  appearing
03700	in  'SECTION  A'  is  to  be  used  after  its 1st use the line 'PLAY
03800	A,N1,N2;' must appear. N1 and N2 are numbers used to  set  the  begin
03900	time  of  each play.  If N2 is 0 or does not appear the begin time is
04000	in seconds.  If 2 numbers appear, the 1st is  an  instrument  number,
04100	the 2nd a note number.
04200	
04300	'SECTION'  may  be  used at any time in the data list.   A 'PLAY' may
04400	appear anywhere after a section has been designated.  At any time the
04500	data  of  a section may be over-ridden by listing new data for any of
04600	the parameters. Above, at time 10" P4 of BUZZ  will  change  to  150.
04700	etc.
04800	
04900	Be  sure  to  check  your  score carefully when using this feature in
05000	conjunction with 'ALL', 'MOVE', 'DUPL', and 'REP'.
05100	
05200	
05300	
     

00100	     **********  SECTION 14  **********
00200	
00300	∞∞∞∞∞∞ How to play more than a couple of seconds of sound. ∞∞∞∞∞∞∞∞∞
00400	
00500	In  the  sound generating program when '*' appears type:  'RCDFLG←1;'
00600	Type 'BIGBIT←1' if maximum amplitudes are in doubt.  This will  cause
00700	the  computed sound samples to be written out on the disk in a series
00800	of files beginning with the name MUSAA.DMD. If BIGBIT←-1; samples  go
00900	to MTA0. Be sure that RCDFLG and/or BIGBIT are set to zero when these
01000	features are not being used.*****
01100	
01200	For operation with RCDFLG or BIGBIT it is best if 'LSBUF' is  between
01300	1000  and 2000. With RCDFLG you may also type 'DOPLAY←1;' if you wish
01400	each buffer full of  sound  to  play  over  the  speakers  while  the
01500	computation is proceeding.
01600	
01700	When  your  music has finished computing make a note of the last name
01800	that appears on the TTY. (e.g. MUSAQ)
01900	
02000	When  in this mode the program writes a 'SAVE' file on the disk after
02100	every 33000 words of omputing.  This file bears the name of  whatever
02200	you last typed as input to the program plus the extension '.SAV'.  If
02300	the computer dies while the program is running, after it is restarted
02400	simply  type  'RUN  NAME.SAV  CORE' where 'NAME' is what you had last
02500	entered and 'CORE' is the proper core size of the job.  The job  will
02600	take up where it last saved itself.
02700	
02800	  (If you were writing on MAGTAPE the tape must also be 
02900	  repositioned with the TAPNEW program.)
03000	
03100	To play long pieces you must first convert all your '.DMD'  files  to
03200	one  long  file  called  'MUSIC.MUS'.  This  is  done by the 'CONNEW'
03300	program. Type 'EX CONNEW[MUS,LCS]'.  (EX=execute) For  name  #1  type
03400	'MUSAA'  if that is the first name.  (<CR>=MUSAA)  Then type the last
03500	name noted earlier.  (e.g. MUSAQ)
03600	
03700	The TTY will type the file names as the conversion takes place.
03800	
03900	Next type 'EX sOUND[MUS,LCS]'.  SOUND is self-instructional.   If the
04000	UDP  (user disk pack) is used it must! be assigned.  To play from the
04100	UDP use 'UDPNEW[MUS,LCS]' instead of SOUND.
04200	
04300	***  RCDFLG←-1;  ***
04400	
04500	Use this when running from 5 to 30 seconds of sound.  This causes one
04600	long file (MUSAA.DMD) to be written on the disk which can  be  played
04700	directly  by  SOUND   without  any  conversion.    Be  sure to delete
04800	MUSAA.DMD  before  leaving!    With  RCDFLG←-1;  there  are  no  save
04900	features.
05000	
05100	Use  the 'TAPNEW[MUS,LCS]' program for storing .DMD files on tape for
05200	later use.  To add to files already on tape, type 'END' as  name  #1.
05300	To move to end of a particular file name, type 'NAME END'.  The files
05400	may be converted directly from the tape or, by  typing  'RESTORE'  as
05500	name #1, they will be written back on the DSK. <CR> as the final name
05600	restores the entire tape.
05700	
05705	****  HOW TO SET FILE NAMES  ****
05709	
05713	THE FIRST OF ANY SERIES OF FILE NAMES MAY BE SET TO SPECIAL NAMES  BY
05717	USING  OTHER  NUMBERS  FOR  RCDFLG  OR BIGBIT.  ANY MINUS NUMBER WITH
05721	RCDFLG WILL WRITE A SINGLE LONG FILE.  RCDFLG=-2  WILL  WRITE  MUSAB,
05725	=-3  WILL  WRITE MUSAC, =-26 WILL WRITE MUSAZ, =-27 WILL WRITE MUSBA,
05729	ETC. ANY PLUS NUMBER FOR RCDFLG WILL WRITE A SERIES OF 33K FILES.  IF
05733	RCDFLG=4  THE  SERIES  WILL START WITH MUSAD AND CONTINUE WITH MUSAE,
05737	MUSAF, ETC.  =27 WILL START WITH MUSBA AND CONTINUE WITH MUSBB,  ETC.
05741	THESE SAME GENERAL RULES WILL APPLY FOR BIGBIT.
05745	
05749	
05753	
05800	  XXXXXXXX REVERB XXXXXXXXX
05900	
06000	If  you  are  using  reverberation  and  are  computing your music in
06100	several sections it is necessary to set P2 for the  'RV'  instruments
06200	in a special way.
06300	
06400	In  place  of  P2  the  following must appear: 'DUR(N1,N2,N3)'. N1=P2
06500	N2=SPEED(as set by you someplace earlier) N3=NCHNS(num. of channels).
06600	
06700	This is all necessary to avoid having some blank samples (which might
06800	cause clicks) at the ends of sections.
06900	
07000	Example:  INPUT? TTY:
07100	   	  *RCDFLG←1; (or 'BIGBIT←1;' for 18-bit computation.)
07200	   	  *REVINIT←1;R←0; (assuming 'R' is in the reverb insts.)
07300		  *PLAY;RV1 0 DUR(11.3451,4,2);RV2;
07400	     	  *<CNTRL Z>
07500	  	  INPUT? DSK:NAME.DAT
07600		  0 0 1 3 5 MUSAA/  5 7 7 9 MUSAB/
07700		       (the numbers are P1 for each note.)
07800		  INPUT?
07900	
08000	At this point the computation is ended and MUSAA and MUSAB are  ready
08100	to be converted for playing.
08200	
08300	If  a  new  section  is  to  be  begun  with  a  continuation  of the
08400	reverberation, the next  call  on  the  reverb  instruments  must  be
08500	preceded by:
08600	
08700	    REVINIT←0;
08800	
     

00100	     **********  SECTION 15  **********
00200	
00300	
00400	The following contains examples of most features of 'SCORE'.
00500	
00510	        THE EDIT FILE NAME WILL BE TEST. (USE UP TO 5 LETTERS.)
00525		ZEST.DAT will be the name of the note list.
00540	
00555	       		If the first column is blank the line will be ignored.
00600	
01000	BUZZ ;		instrument 1=BUZZ, begin time=0", duration=# of notes
01100			in 'NOTES' (P3).
01200	P2 RHY/		RHY=next entries will be in terms of musical rhythm.
01300	4/8/16/1/-8/	quarter note, eighth, sixteenth, whole, eighth rest
01400	4,8/1,16/	dotted quarter, whole tied to sixteenth
01500	8,16 X 5/2 X 3/	five dotted eighths, three half notes
01600	-12/20/		-12=1/8 note triplet rest(1/12 of a whole), 20=1/5 of
01700			a quarter
01800	4//8///-8,16/	two quarters, three eighths, a dotted eighth rest
01900	16//4/8,16/REP 3,5;	the previous 3 entries will play 5 times
02000	        	';' signals the end of the list of entries
02100	
02200	P3 NOTES/	notes of the tempered scale may be entered
02300	C1/CS/D/	C1=lowest C on piano keyboard. S=sharp. F=flat.
02400	DS/E/		The octave range will remain the same until changed.
02500	FS4/DS/C/R/	F# above middle C, D#, middle C, R=rest.
02600	DF5//D////	Two Db's in 5th octave, four D's.
02700	C3/G/E/G/X 4,3/	The pattern is played 3 times.
02800	REP 27/		Everything thus far will repeat.
02900	FS6 X 9/FINE;	Nine F#'s, 'FINE' marks conclusion for BUZZ.
03000	         	';' concludes list.
03100	
03200	P4 NUM/		A list of numbers will be entered.
03300	100//200/300 X 4/	A total of seven numbers.
03400	50/X 3/9999.02/	The sequence 300,300,50 will play twice.
03500	REP 12,3;	The entire string of  numbers  entered  will  play  3
03600			times. 9999.02 will cause the data of P2 to appear at
03700			that point.
03800	
03900	P5 FUNC/	A list of functions.  (Use  only  F1 through F15 in a
04000			list).
04100	2//10 X 3/5; 	=F2,F2,F10,F10,F10,F5.  'REP' may also be used.
04200	          	Every 'list' must end with a ';'.
04300	
04400	P6 LIT/		
04500	"P3*P4"/"P3+P4"///Surround items by quotes. 2nd item appears 3 times.
04600	"AS"/",-1"/"1"/; Comma precedes minus sign. There are no REP features
04700			with LIT.
04800	      		';' will end list.  Last item will appear twice.
04900	
05000	      		Next will be random selection of literal strings.
05100	      		Use no more than two lines.
05200	      		The 1st of each pair is a % number.
05300	P7 .2 "P3*P4" .3 "P6" .33 "101.3" .17 "2";
05400			20% of the time it will pick "P3*P4",etc.
05500	P8 MOVE/	To move from one number to another over a given dura-
05600			tion.
05700	5 10 150/	During 5" P8 will change from 10 to 150.
05800	3 80 43;	During next 3", from 80 to 43.
05900	      		End with ';'. P8 will stay at last number.(43)
06000	P9 MOVE/
06100	6 CS5 FS4;	During 6" P9 will move down from C# to F#.
06200	        ;	After 6" it will stay on F#.
06300	
06400	P10 MOVE/20 10,40 100,400/ If there are 5 numbers, the last two pairs
06500	10  30,100 30,30;    will be random selection ranges. (see comments)
06600	
06700	P11 MOVE/11.4 C2,F2 G3,C5/ Moving ranges of random selection of temp-
06800			ered notes.
06900	3 A4,A4 A4,A4/	Stays on A for 3".
07000	5 A4,A4 C2,F2;	Returns to change of departure.
07100	      		Octave numbers must always be given with 'MOVE'.
07200	END  ;		Ends entries for this instrument at this begin time.
07300	
07400	BUZZ 7.5;	Entries beginning at time 7.5"
07500	P7 263.5;	This number will repeat for each note until changed.
07600	P5 F11;		 "   function "    "     "    "    "    "     ".
07700	                 (up to F15 only)
07800	P9 AS3;		This note   will  "     "    "    "    "    "(no F's)
07900			If param numbers are skipped, they will print 
08000	                out as zeros.
08100			Next gives random selection within specified ranges.
08200	        	30% chance between 1 & 4, 22% between 10 & 15, etc.
08300	P13 .3 1,4  .22 10,15 .18 20,30  .3 55,55 ;	(P13 was 0 until now.)
08400			Next gives random selection of tempered notes.
08500	P15  .1 CS3,F3  .5 C4,DS4  .4 FS6,B6;
08600	P16  1 10,20;	 100% of the time, a number between 10 and 20.
08700	P14  P13;	Will repeat selections of P13 in P14.
08800	P17 9999.02; END; This repeats data of P2.  
08900	                 Ends entries for BUZZ at time 7.5"
09000	
09100	TOOT 0 2,15;	Inst 2=TOOT, begin time=0", 
09200	                2,15 means inst2 will play 15 notes.
09300	P2 REP; 	Will repeat data of previous 
09400	                instrument for this param number.
09500	P3 REP 9;	Repeats P9 of previous instrument.
09600	P5 REP 3,2;	Repeats P3 of instrument 2.
09700	                (i.e. TOOT. just ';' does the same.)
09800	P6 REP 6,1 4;	Will repeat P6 of inst 1 in this 
09900	                and all insts through #4.
10000	P31  .05;	P31 sets random tempo range to + or - .05"
10100	                It will never vary more than .05"
10200	P32  .2; END;	P32 sets % of random rests.
10300	
10400	CLAR 2 9.45;	Begin time=2", dur=9.45".
10500	P2 RHY/TEMPO/	TEMPO will be set for this instrument individually.
10600	7 84 112/	Moves from MM=84 to MM=112 during 7".(7 quarter NOTES)
10700	11.3 112 46/	Retards to MM=46 during 11.3".
10800	1 96 96;	Shifts to MM=96, stays there.  
10900	                ';' ends 'TEMPO' entries.
11000	4 X 7/8,16/16/REP 2,15; Rhythmic items follow directly.
11100	
11200	P3 C4; P4 100; P5 ; P5 will repeat data of param just before.
11300	                 (Don't use with P31-32)
11400	P32 MOVE/			(the above = rep 3,4/)
11500	4 .1 .5/	Random rests will change from 10% to 50% in 4".
11600	3 .6 0;		  "     "      "    "     "   60% to 0% in 3".
11700			A ';' is needed to end 'MOVE' entries.
11800	END  ;
11900	
12000	ZAP   0 8;	Inst 4=ZAP, begin time=0", duration=8".
12100	DUPL 2;		Will duplicate all data of inst 2 (TOOT) thus 
12200	                far entered.
12300	P2 RTAP/	Rhythm from telegraph keys, to be coordinated.
12400	NAME  /		1st five spaces=name of rhythm data file.
12500	1,4,8/15 /1,1/7 /2,16/5; Coordination comes on 16th, 
12600	                          and 23rd notes and at end.
12700	             	';' ends 'RTAP' data.
12800	P4 123; END ;	 P4 is reset immediately.
12900	TOOT  2,5;	Next entries begin on note 5 of instrument 2.
13000	P2 TAP;		For rhythm entered with telegraph keys.
13100	NAME2 ;		1st five spaces=name of rhythm data file.
13200	P7 REP 4,3;	Data of P4, inst 3 will be repeated.
13300	P8 "P3*P4/2+P16";    This literal string will appear for each note.
13400	P10 SUBN;	This will call a subroutine and print numbers.
13500	P11 SUBL;END;    "    "    "   "     "       "    "   letters.
13600	          Be sure to leave at least 1 space after 'INSERT' or 'EDIT'.
13700	INSERT  2.3;	Line will appear at time 2.3" (basic time!).
13800	P24←21.3*P4+P8/P11;  <Up to 75 characters (including 
13900	                     this comment) will appear.
14000	
14100	INSERT  2,7; The next line will appear just before note 7 of inst 2.
14200	PRINT P1;
14300	
14400	EDIT  1,8,4;	The next will replace P4 in note 8 of inst 1.
14500	440        ; Up to 5 characters may be used (don't include the ; !!)
14600	
14700	EDIT  3,11;If no param num is given the entire note must be entered.
14800	CLAR 2.3 .13 AS*2 250;  <Up to 75 spaces may be used. 
14900	                        Be sure P1&2 are OK.
15000	
15100	TEMPO/	'TEMPO' changes outside of a particular inst will affect
15200	11 72 144/ P2 for all insts.  Be sure to check any time factors
15300	6 144 108/		in other params and all data entries
15400	5 108 /72;	which are time dependent. ';' ends TEMPO entries.
15500	RUN;
15600	
     

00100	     **********  SECTION 16  **********
00200	
00300	*********** Some Supplemental Programs ************
00400	
00500	******  CONNEW  ********
00600	
00700	This program reads the .DMD files which  are  created by  MUS10  when
00800	BIGBIT  or  RCDFLG are set to any non-zero value.  A single long file
00900	named MUSIC.MUS is created which is used for the real-time play.
01000	
01100	If the IBM 'User Disk Pack' is to be used the UDP must be assigned in
01200	advance. ALWAYS!! BE SURE THAT THE CORRECT UDP IS MOUNTED!!!!!!!!
01300	
01400	If  CONNEW  is  asked  to  read  from MAGTAPE it will ask you to type
01500	'MAXAMP'. MAXAMP is the amplitude number that  appears  at  your  TTY
01600	when  the  last  .DMD  file  of  your computation is completed. (Just
01700	before INPUT ? appears again.)
01800	
01900	When all the .DMD files have been converted CONNEW will ask 'MORE  ?'
02000	To add another set of files type YES, otherwise NO or <CR>.
02100	
02200	
02300	******* PLAY, SOUND, GAR50, UDPNEW ************ (All on [MUS,LCS] )
02400	
02500	All these programs are used for real-time play.
02600	
02700	PLAY reads a single file (MUSAA.DMD or MUSIC.MUS) from  the  disk  at
02800	speeds 1, 2 or 3.  If PLAY is to be used set RCDFLG←-1.
02900	
03000	SOUND  plays directly from the IBM 3330 disk.  GAR50 copies MUSIC.MUS
03100	to the LIBRASCOPE disk.  (Use GAR50 for 4-channel sound.)
03200	
03300	UDPNEW plays from the IBM 'User Disk Pack'.  The UDP must be assigned
03400	in advance.
03500	
03600	The 'SPEED' numbers are as follows:
03700	
03800		10000 SRATE = 3
03900		20000   "   = 1 (or 10000 SRATE in stereo.)
04000		25000   "   = 2
04100		50000   "   = 4 (or 25000 SRATE in stereo.)  
04200		100000  "   = 5  (or 25000 SRATE in quadriphonic.)
04300	
04400	
04500	************ TAPNEW ************
04600	
04700	This program is for putting .DMD files onto MAGTAPE.  Ordinarily  the
04800	program  will  copy  the .DMD files from the disk onto MTA0 in such a
04900	form that they may be converted directly by CONNEW.
05000	
05100	TAPNEW may also be used to restore .DMD files to  the  disk  or  copy
05200	them from MTA1 to MTA0.
05300	
05400	To  restore  to disk, type RESTORE when the program asks for NAME #1.
05500	To copy  to  MTA1,  type  COPY       "   "    "      "    "    "  ".
05600	To add more to  tape,  type  END     "   "    "      "    "    "  ".
05700	
05800	Other commands that may also be given are BACKSPACE and RESET. If the
05900	system dies while you are computing  with  BIGBIT←-1  you  must!  use
06000	BACKSPACE  to  get back to the proper position on the tape before you
06100	run the appropriate .SAV file.
06200	
06300	RESET is used to set the tape in proper position to continue  writing
06400	with BIGBIT←-1 after CONNEW has been used.
06500	
     

00100	**********  INDEX  **********
00200	
00300			  SECTION NUMBER
00400	
00500	ALL		. . . 10		
00600	AMPLITUDE FACTOR  . . 12
00700	BASIC TIME	. . . 9,11		RHYTHM		. . . 4,10
00800	BEGIN TIME	. . . 1			RTAP		. . . 10,11
00900	BIGBIT		. . . 14		RUN		. . . 2,12
01000	BLANK LINES	. . . 1,5		SECTIONS	. . . 13
01100	CODE WORDS	. . . 4			SEG		. . . 11
01200	COMMA		. . . 9			SEMICOLON	. . . 1,8,12
01300	COMMENTS	. . . 1	
01400	CONDUCT		. . . 11		SPEED		. . . 16
01500	CONNEW		. . . 16		STAR		. . . 4
01600	COUNT		. . . 9			SUBROUTINES(SUBN,SUBL) . 9
01700	DOPLAY		. . . 14		SYNTH		. . . 11
01800	DUPLICATE	. . . 10		TAP		. . . 10,11
01900	DURATION	. . . 1,9,12,14,16	TELEGRAPH KEYS	. . . 10
02000	DUTY FACTOR	. . . 10		TEMPO	      . . . 4,10,11
02100	EDIT		. . . 11,12		TEMPO FACTOR . . 4,10,12
02200	END		. . . 2,5		TYPE		. . . 12
02300						X		. . . 5,8
02400	FINE		. . . 5
02500	FUNCTIONS	. . . 2,5		ZERO		. . . 2
02600	INSERT		. . . 11
02700	INVERSION	. . . 7
02800	INVISIBLE	. . . 10,11
02900	LETTERS		. . . 5
03000	LITERAL		. . . 5
03100	LSBUF		. . . 14
03200	METRONOME	. . . 4
03300	MOTIVES		. . . 7
03400	MOVE,MOVX	. . . 8
03500	NOTES		. . . 2,5
03600	NOTES,EDITED	. . . 11
03700	NUMBERS		. . . 2,5
03800	OMIT		. . . 12
03900	P2		. . . 4,5,8,9,10,12,14
04000	PLAY		. . . 16
04100	PRINT		. . . 11
04200	PROXIMITY MODE	. . . 5
04300	QUAD  . . . . . . . . 9
04400	RANDOM LISTS	. . . 6
04500	RANDOM SELECTION  . . 3,8
04600	RCDFLG		. . . 14,16
04700	REP,REPEAT	. . . 2,4,6,10
04800	RESERVED NUMBER(9999.)	. . . 2,6
04900	RESTART		. . . 1
05000	RESTS		. . . 4,5,15
05100	RETROGRADE	. . . 7
05200	REVERBERATION	. . . 14